package Metronome;

/**
 * Interface Observable du Design pattern Observer
 *
 */
public interface Observable {
	/**
	 * Notifie tous les observers que le sujet a ete modifie
	 */
	void notifyObservers();
	

	/**
	 * Notifie tous les observers que le sujet a ete modifie
	 * @param position, valeur de la molette
	 * @param ok, true si la molette s'est stopper, false si la valeur n'est pas stable
	 */
	void notifyObservers(float position, boolean ok);
	
	/**
	 * Attache l'observer en parametre au sujet observe
	 * @param obs
	 */
	void addObserver(Observer obs);
	
	/**
	 * Detache l'observer en parametre ddu sujet observe
	 * @param obs
	 */
	void deleteObserver(Observer obs);
}
